#include <bits/stdc++.h>

using namespace std;

/*
请实现一个函数用来判断字符串是否表示数值（包括整数和小数）。
例如，字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。
 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
*/


class Solution {
public:
    bool isnum(char c){
        return c>='0'&&c<='9';
    }
    bool isNumeric(char* str)
    {
        int len=strlen(str);
        if(str==NULL||len==0) return false;
        int index=0,numz=0,numf=0,numdot=0,nume=0;
        while(index<len){
            char c=str[index];
            if(c=='.'){
                if(++numdot>1||index==0||index==len-1){
                    return false;
                }
                index++;
            }else if(c=='+'||c=='-'){
                if(index!=0) return false;
                else{
                    c=='+'?numz++:numf++;
                    index++;
                }
            }else if(c=='e'||c=='E'){
                if(++nume>1||index==0||index==len-1)return false;
                if(str[index+1]=='+'||str[index+1]=='-'){
                    if(index+2<len) index++;
                    else  return false;
                }
                numdot=1;
                index++;
            }else if(isnum(c)){
                index++;
            }else{
                return false;
            }
        }
        return true;
    }

};


/*

+100
5e2
-123
3.1416
-1E-16

12e
1a3.14
1.2.3
+-5
12e+4.3

*/
int main(){
    freopen("in.txt","r",stdin);
    Solution s;
    string st;
    while(cin >> st){
        cout << st <<endl;
        cout << s.isNumeric((char *)st.c_str())<<endl;
    }


    return 0;
}